Back butonu çalışmıyor
Merhaba arkadaşlar ne yaptıysam yapıyim Webview uygulamamda back butonunu düzeltemedim. Geçmişte url varsa bir önceki sayfaya gitsin yoksada uygulamadan çıksın istiyorum kodlarım doğru gözüküyor ancak uygulama içerisinde geri tuşuna basınca Malesef uygulama durduruldu diyip atıyor uygulamadan hatam nerde yardım ederseniz sevinirim şimdiden sağolun :)
MainActivity.java:
[code]
package com.kefelon.goldplak;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Toast;
public class MainActivity extends ActionBarActivity {
WebView webview;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
WebView webview = (WebView) findViewById(R.id.webview);
webview.getSettings().setSupportZoom(true);
webview.getSettings().setJavaScriptEnabled(true);
webview.loadUrl("http://www.goldplak.com");
final ProgressDialog progress = ProgressDialog.show(this, "Gold Plak", "Yükleniyor....", true);
progress.show();
webview.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
Toast.makeText(getApplicationContext(), "Sayfa yüklendi", Toast.LENGTH_SHORT).show();
progress.dismiss();
}
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
Toast.makeText(getApplicationContext(), "Bir hata oluştu", Toast.LENGTH_SHORT).show();
progress.dismiss();
}
});
}
@Override
public void onBackPressed() {
if(webview.canGoBack()) {
webview.goBack();
} else {
super.onBackPressed();
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
super.onOptionsItemSelected(item);
switch(item.getItemId()) {
case R.id.action_about:
action_aboutMenuItem();
break;
case R.id.action_settings:
action_settingsMenuItem();
break;
}
return true;
}
private void action_aboutMenuItem(){
new AlertDialog.Builder(this)
.setTitle("Hakkımızda")
.setMessage("Gold Plak olarak müzik sektörü ile ilgili müşteri odaklı kişisel ve kurumsal hizmet veren, dinamik, güler yüzlü, yaratıcı kadromuzla müşterilerimizin beklentilerini karşılamak için kesintisiz hizmet vermekteyiz.\n" +
"\n" +
"Bu şekilde müşterilerimizin plak ve dj ekipmanlarından yararlanmalarını sağlayarak taleplerini karşılayabilmek. Hedefimiz, yeni çıkan tüm ürünleri sunmak, maksimum düzeyde müşteri memnuniyetini sağlamak..")
.setNeutralButton("Tamam", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
}).show();
}
private void action_settingsMenuItem(){
new AlertDialog.Builder(this)
.setTitle("Versiyon")
.setMessage("Gold Plak v1.1")
.setNeutralButton("Tamam", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
}).show();
}
}
[/code]